import { BasicColumn } from '/@/components/Table';
import { FormSchema } from '/@/components/Table';
import { rules } from '/@/utils/helper/validator';
import { render } from '/@/utils/common/renderUtils';
import { getWeekMonthQuarterYear } from '/@/utils';
//列表数据
export const columns: BasicColumn[] = [
	{
		title: '车辆的VIN',
		align: 'center',
		dataIndex: 'vin',
	},
	{
		title: '所属运营商',
		align: 'center',
		dataIndex: 'operatorid_dictText',
	},
	{
		title: '告警所属充电站',
		align: 'center',
		dataIndex: 'warnStation_dictText',
	},
	{
		title: '告警所属充电桩',
		align: 'center',
		dataIndex: 'warnStakeId_dictText',
	},
	{
		title: '告警原因',
		align: 'center',
		dataIndex: 'warnCnName',
		slots: { customRender: 'warnCnName_dictText' },
	},
	{
		title: '告警类型',
		align: 'center',
		dataIndex: 'warnType_dictText',
	},
	{
		title: '板子编号',
		align: 'center',
		dataIndex: 'sn',
	},
	{
		title: '需要停机得imei',
		align: 'center',
		dataIndex: 'imei',
	},
	{
		title: '充电id',
		align: 'center',
		dataIndex: 'chargingId',
	},
	{
		title: '停机类型 ',
		align: 'center',
		dataIndex: 'type_dictText',
	},
	{
		title: '处理状态 ',
		align: 'center',
		dataIndex: 'handleStatus_dictText',
	},
	{
		title: '创建时间 ',
		align: 'center',
		dataIndex: 'createTime',
	},
];
///查询数据
export const searchFormSchema: FormSchema[] = [
	{
		label: '车辆的VIN',
		field: 'vin',
		component: 'JInput',
		//colProps: {span: 6},
	},
	{
		label: '告警原因',
		field: 'warnCnName',
		component: 'JInput',
		//colProps: {span: 6},
	},

	{
		label: '所属运营商',
		field: 'operatorid',
		component: 'Select',
		slot: 'operatorIdSlot',
	},
	{
		label: '所属充电站',
		field: 'warnStation',
		component: 'Select',
		slot: 'stationIdSlot',
	},

];
//表单数据
export const formSchema: FormSchema[] = [
	{
		label: '板子编号',
		field: 'sn',
		component: 'InputNumber',
	},
	{
		label: '需要停机得imei',
		field: 'imei',
		component: 'Input',
	},
	{
		label: '充电id',
		field: 'chargingId',
		component: 'Input',
	},
	{
		label: '停机类型 3:热成像停机 2:阈值停机 1：手动停机',
		field: 'type',
		component: 'InputNumber',
		dynamicRules: ({ model, schema }) => {
			return [{ required: true, message: '请输入停机类型 3:热成像停机 2:阈值停机 1：手动停机!' }];
		},
	},
	{
		label: '处理状态 0:未处理 1：已处理 2：已下发指令',
		field: 'handleStatus',
		component: 'Input',
		dynamicRules: ({ model, schema }) => {
			return [{ required: true, message: '请输入处理状态 0:未处理 1：已处理 2：已下发指令!' }];
		},
	},
	// TODO 主键隐藏字段，目前写死为ID
	{
		label: '',
		field: 'id',
		component: 'Input',
		show: false,
	},
];

// 高级查询数据
export const superQuerySchema = {
	sn: { title: '板子编号', order: 0, view: 'number', type: 'number' },
	imei: { title: '需要停机得imei', order: 1, view: 'text', type: 'string' },
	chargingId: { title: '充电id', order: 2, view: 'text', type: 'string' },
	type: { title: '停机类型 3:热成像停机 2:阈值停机 1：手动停机', order: 3, view: 'number', type: 'number' },
	handleStatus: { title: '处理状态 0:未处理 1：已处理 2：已下发指令', order: 4, view: 'text', type: 'string' },
};

/**
 * 流程表单调用这个方法获取formSchema
 * @param param
 */
export function getBpmFormSchema(_formData): FormSchema[] {
	// 默认和原始表单保持一致 如果流程中配置了权限数据，这里需要单独处理formSchema
	return formSchema;
}
